
# 面向对象的封装
"""
说明 ： 将类内部的一些数据或方法设置成私有，其目的就是不想让外部访问。
设置私有化：
    设置私有属性 ： __属性   ，只有此类的内部可以访问
    设置私有方法 ： __方法名 ，只有此类的内部可以访问
    设置私有属性 ： _属性  ，此类或者子类的内部可以访问
    设置私有方法 ： _方法名 ，此类或者子类的内部可以访问
作用 ： 设置私有后，外界是无法去访问 ，从而起到一个保护作用 。
"""
class Bugs():

    # 类变量
    bug_type = ['功能问题','数据问题','可靠性问题','安全问题','性能问题']
    bug_yz = [1,2,3,4]
    bug_yxj = [1,2,3,4]

    def __init__(self,bug_id,bug_project,version):
        # 实例变量
        self.bug_id = bug_id
        self.bug_project = bug_project
        self.version = version
        print("bug_project:",self.bug_project)

        # 设置一个私有变量
        self.__who = "admin"

    # 定义方法
    def create_bug(self):
        pass

    def update_bug(self):
        # print(self.bug_lst)
        pass

    # 设置成私有方法
    def __delete_bug(self):
        print("此方法属于私有方法")
        pass

    def search_bug(self,bug_id=None):
        bug_lst = []    # 局部变量
        bug_lst.append({'bug_id':1,'bug_title':"xxxxx",'tijiaozhe':self.__who})
        bug_lst.append({'bug_id':2,'bug_title':"yyyyy",'tijiaozhe':self.__who})
        print("在此方法中访问实例变量:self.version",self.version)
        return bug_lst


bug = Bugs(1,'tpshop',1.0)
# bug.__delete_bug()        # 外部无法访问
# bug.__who
print(bug.search_bug())

